package com.tupian.service;

import com.tupian.pojo.Image;
import com.tupian.dto.ImageQueryDto;
import com.tupian.dao.ImageDao;
import java.util.List;
import com.github.pagehelper.PageInfo;
import com.github.pagehelper.PageHelper;
import org.springframework.stereotype.Service;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.transaction.annotation.Transactional;


@Service
@Transactional
public class ImageService 
{
	@Autowired
	private ImageDao imageDao;


//================以下为自动生成==================
	/**
	 * 根据主键ID查询
	 * @author  
	 * @date 2020-03-04
	 * @param 	id				主键ID	
	 * @return	Image		
	 */
	public Image selectById(Integer id)
	{
		return imageDao.selectById(id);
	}

	/**
	 * 查询列表
	 * @author  
	 * @date 2020-03-04
	 * @param 	image		参数含义
	 * @return	List<Image>		
	 */
	public List<Image> selectList(Image image)
	{
		return imageDao.selectList(image);
	}

	/**
	 * 查询数量
	 * @author  
	 * @date 2020-03-04
	 * @param 	image		查询条件
	 * @return	Long 结果数量	
	 */
	public Long count(Image image)
	{
		return imageDao.count(image);
	}

	/**
	 * 查询分页列表
	 * @author  
	 * @date 2020-03-04
	 * @param 	image   查询条件	
	 * @param 	pageNum   页码
	 * @param 	pageSize   每页显示数量
	 * @param 	orderBy   排序内容
	 * @return	PageInfo<Image>		
	 */
	public PageInfo<Image> selectForPage(Image image,Integer pageNum,Integer pageSize,String orderBy)
	{
		PageHelper.startPage(pageNum, pageSize,orderBy);
		List<Image> list=imageDao.selectList(image);
		PageInfo<Image> page = new PageInfo<Image>(list);
		return page;
	}

/**
	 * 根据dto，查询分页列表
	 * @author  
	 * @date 2020-03-04
	 * @param 	imageQueryDto   查询条件	
	 * @param 	pageNum   页码
	 * @param 	pageSize   每页显示数量
	 * @param 	orderBy   排序内容
	 * @return	PageInfo<Image>		
	 */
	public PageInfo<Image> selectForPage(ImageQueryDto dto,Integer pageNum,Integer pageSize,String orderBy)
	{
		PageHelper.startPage(pageNum, pageSize,orderBy);
		List<Image> list=imageDao.selectListByDto(dto);
		PageInfo<Image> page = new PageInfo<Image>(list);
		return page;
	}

	/**
	 * 插入
	 * @author  
	 * @date 2020-03-04
	 * @param 	image		参数含义
	 * @return	int						插入成功所影响的行数			
	 */
	public int insert(Image image)
	{
		return imageDao.insert(image);
	}

	/**
	 * 条件插入
	 * @author  
	 * @date 2020-03-04
	 * @param 	image		参数含义
	 * @return	int						插入成功所影响的行数			
	 */
	public int insertSelective(Image image)
	{
		return imageDao.insertSelective(image);
	}

	/**
	 * 更新
	 * @author  
	 * @date 2020-03-04
	 * @param 	image		参数含义
	 * @return	int						更新成功所影响的行数			
	 */
	public int update(Image image)
	{
		return imageDao.update(image);
	}

	/**
	 * 条件更新
	 * @author  
	 * @date 2020-03-04
	 * @param 	image		参数含义
	 * @return	int						更新成功所影响的行数			
	 */
	public int updateByPrimaryKeySelective(Image image)
	{
		return imageDao.updateByPrimaryKeySelective(image);
	}	

	/**
	 * 删除
	 * @author  
	 * @date 2020-03-04
	 * @param 	image		参数含义
	 * @return	int						删除成功所影响的行数			
	 */
	public int delete(Image image)
	{
		return imageDao.delete(image);
	}

	public ImageDao getImageDao() {
		return imageDao;
	}

	public void setImageDao(ImageDao imageDao) {
		this.imageDao = imageDao;
	}
}